//
//  AFFAppSettings.h
//  应用程序系统配置
//
//  Created by apple on 14-3-21.
//  Copyright (c) 2014年 Anyfish. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>
#import "AFFLModeBase.h"

#define kSetting                [AFFThemeConfig sharedInstance] // 主题设置
#define kAppSetting             [AFFAppSettings sharedInstance] // 程序配置

/*****一次性装载的配置信息，key定义*****/


/** 鱼类型配置 */
#define kDicKey_Exp_Fish_Config         @"exp_fish_config"

/** 百鱼表情 */
#define kDicKey_Exp_Anyfish         @"exp_anyfish"
/** 动画表情 */
#define kDicKey_Exp_Animation       @"exp_animation"
/** 热门表情 */
#define kDicKey_Exp_Hot             @"exp_hot"

/** 特殊个别表情，如悄悄，接纳鱼等，如果需要在文本中显示的需要添加[] */
#define kDicKey_Exp_Extend              @"exp_extend"


/** 鱼跳加载效果 */
#define kDicKey_Circle_Refresh         @"circle_refresh"
/** 鱼圈加载 */
#define kDicKey_Circle_Loading         @"circle_loading"
/** HUD加载 */
#define kDicKey_Refresh_Loading         @"refresh_loading"

/******* 本地化存储数据key *******/
/** 语音播放模式切换 */
#define kLocal_IsMicro                 @"isMicro"
/** 未读鱼圈 */
#define kLocal_HasUnreadCircle         @"hasUnreadCircle"
/** 未读鱼潮 */
#define kLocal_HasUnreadTide           @"hasUnreadTide"
/** 未读鱼崽 */
#define kLocal_HasUnreadYuzai          @"hasUnreadYuzai"
/** 未读鱼篓 */
#define kLocal_HasUnreadYulong         @"hasUnreadYulong"
/** 未读顾聊鱼变化 */
#define kLocal_HasUnreadFacespotFishChange           @"hasUnreadFacespotFishChange"
/** 未读新系统 */
#define kLocal_HasNewSystem            @"hasNewSystem" // 这个不存数据库，于登录者无关
/** 未读新系统 */
#define kLocal_NewSystemDesc           @"nSystemDesc" // 这个不存数据库，于登录者无关
#define kLocal_VersionIgnore           @"isVersionIgnore" // 是否暂时不更新，每天检查一次

/** 检测周期-每天 */
#define kLocal_LastTaskDailyCheekTime  @"lastTaskDailyCheekTime" // 上一次检测版本日期，每天一次
#define kLocal_LastTaskHourCheekTime  @"lastTaskHourCheekTime" // 上一次检测版本时间，每小时一次
#define kLocal_VersionStatus           @"versionStatus" // 需要更新的情况
#define kLocal_DataClean               @"dataClean" // 应用强制清理
#define kLocal_LastTaskRadioCheekTime  @"lastTaskRadioCheekTime" // 上一次检测版本日期，每天一次
/** 弹出鱼币消费 */
#define kLocal_Alert_Coin              @"showCoinAlert"
/** 弹出点赞消费 */
#define kLocal_Alert_Assist            @"showAssistAlert"
/** 弹出点赞消费 */
#define kLocal_Alert_Part_Assist       @"showPartAssistAlert"
/** 弹出鱼客送鱼 */
#define kLocal_Alert_Expense_Fish       @"showExpenseFishAlert"

/** 弹出乞讨赏 */
#define kLocal_Alert_Beg               @"showBegAlert"
/** 弹出打工提醒 */
#define kLocal_Alert_Work              @"showWorkAlert"
/** 弹出服务消费提醒 */
#define kLocal_Alert_Service           @"showServiceAlert"
/** 弹出服务摆摊提醒 */
#define kLocal_Alert_ServiceLocal      @"showServiceLocalAlert"
/** 弹出评论消费 */
#define kLocal_Alert_Comment           @"showCommentAlert"
/** 弹出永久保存 */
#define kLocal_Alert_Save              @"showSaveAlert"
/** 弹出圈子发布消费 朋友圈 */
#define kLocal_Alert_Friend_Publish    @"showFriendPublishAlert"
/** 弹出圈子发布消费 娱乐圈*/
#define kLocal_Alert_Part_Publish      @"showPartPublishAlert"
/** 弹出圈子发布消费 工作圈*/
#define kLocal_Alert_Work_Publish      @"showWorkPublishAlert"
/** 弹出圈子发布消费 鱼信*/
#define kLocal_Alert_Barb_Publish      @"showBarbPublishAlert"
/** 弹出回复消费 朋友圈*/
#define kLocal_Alert_Reply             @"showReplayAlert"
/** 弹出回复消费 娱乐圈*/
#define kLocal_Alert_Part_Reply        @"showPartReplayAlert"
/** 弹出离开任务地图界面*/
#define kLocal_Alert_Mission_Out       @"showMissionOutAlert"
/** 弹出提示步数统计警告界面*/
#define kLocal_Alert_StepWarn          @"showStepWarnAlert"

/** 弹出喂养金龙鱼界面*/
#define kLocal_Alert_JinlongFish       @"showJinlongFishAlert"
/** 弹出放生界面*/
#define kLocal_Alert_FreeFish          @"showFreeFishAler"
#define kLocal_Alert_Crowd          @"showCrowdAler"
#define kLocal_Alert_luck          @"showLuckAler"


/** 弹出评论消费 */
#define kLocal_Alert_Workfire           @"showWorkfireAlert"
/** 弹出抚摸消费 圈子 */
#define kLocal_Alert_Touch             @"showTouchAlert"
/** 弹出鱼崽列表抚摸消费 */
#define kLocal_Alert_Gift_Touch        @"showGiftTouchAlert"
/** 弹出加分提醒 */
#define kLocal_Alert_Diary_Vote        @"showDiaryVoteAlert"
/** 弹出礼品鱼消费 */
#define kLocal_Alert_Present           @"showPresentAlert"
/** 弹出杂鱼消费 */
#define kLocal_Alert_OtherFish         @"showOtherFishAlert"
/** 弹出鱼崽遛群逗消费 */
#define kLocal_Alert_GiftRoomFeed      @"showGiftRoomFeedAlert"
/** 鱼塘下杆扣水 */
#define kLocal_Alert_Pole_Water        @"showPoleWaterUsingAlert"
/** 鱼塔出牌提示 */
#define kLocal_Alert_Tower_playTips    @"showHandsCardsAlert"
/** 弹出鱼阁公告 */
#define kLocal_Alert_Mall_Notice       @"showMallNoticeAlert"
#define kLocal_Alert_Work_Diary_Check       @"showWorkDiaryCheckAlert"       ///< 工作圈简报科目审核

/** 鱼方自己不参加鱼圈排行 */
#define kLocal_Ignore_Circle_Rank      @"ignore_Circle_Rank"
/** 鱼方不显示商家顶 */
#define kLocal_Ignore_Circle_Shared    @"ignore_Circle_Shared"
/** 鱼方是否上传通讯录 */
#define kLocal_Is_Upload_Addressbook   @"isUploadAddressBook"
/** 是否首次登陆 */
#define kLocal_Is_First_Login          @"isFirstLogin"
/** 是否有未查看新同事 */
#define kLocal_HasNewWorker            @"hasNewWorker"
/** 是否滑动收鱼 */
#define kLocal_IsAutoGetFish           @"isAutoGetFish"
/** 是否在点击时高亮显示 */
#define kLocal_IsTouchHighLight        @"isTouchHighLight"

// 部分暂存的默认值
/** 鱼塘抢鱼身份暂存 */
#define kLocal_CachePoolRobID          @"cachePoolRobID"
/** 鱼塘抢鱼宠物暂存 */
#define kLocal_CachePoolRobPet         @"cachePoolRobPet"
/** 鱼塘抢鱼失败震动 */
#define kLocal_CachePoolRobShake       @"cachePoolRobShake"
/** 鱼塘-交通工具 */
#define kLocal_CachePoolTraffic        @"cachePoolTraffic"
/** 鱼塘-下竿便当 */
#define kLocal_CachePoolPushBag        @"cachePoolPushBag"
/** 鱼塘-下竿宠物 */
#define kLocal_CachePoolPushPet        @"cachePoolPushPet"
/** 鱼塘-下竿虚拟形象 */
#define kLocal_CachePoolPushVirtual    @"cachePoolPushVirtual"
/** 鱼塘-下竿遮阳伞 */
#define kLocal_CachePoolPushUmbrella   @"cachePoolPushUmbrella"

/** 鱼寺-默认鱼縋设置*/
#define kLocal_CacheBuddhaPestle       @"cacheBuddhaPestle"
/** 鱼寺-默认鱼香设置*/
#define kLocal_CacheBuddhaIncense       @"cacheBuddhaIncense"
/** 鱼寺-默认鱼香文字设置*/
#define kLocal_CacheBuddhaIncenseText       @"cacheBuddhaIncenseText"


/** 鱼路-计步停止时间*/
#define kLocal_CacheWalkEndTime         @"cacheWalkEndTime"



/** 鱼信-今天是否打开过日历(日期） */
#define kLocal_CacheCalendarDispDate   @"cacheCalendarDispDate"

/** 鱼方-是否显示日历 */
#define kLocal_CacheCalendarDisp       @"cacheCalendarDisp"

/** 鱼篓 - 鱼网投放上一次时间 */
#define kLocal_CacheNetsShareFishDispDate       @"cacheNetsShareFishDispDate"

/** 鱼票 - 上次打印使用的打印机唯一编号 */
#define kLocal_CacheBillLastPrinterGUID    @"cacheBillLastPrinterGUID"
/** 鱼票 - 默认商家code */
#define kLocal_CacheBillEntityCode    @"cacheBillEntityCode"

/** 鱼票 - 邀请码 */
#define kLocal_CacheBillInvitionCode    @"cacheBillInvitionCode"

/** 鱼方 - 我的收藏-保存时间戳，以便于下次不拉取重复数据*/
#define kLocal_CacheCollectionTimeDispDate    @"cacheCollectionTimeDispDate"

/** 鱼塔 - 取牌-出牌是否提示提示框 */
#define kLocal_CacheTowerHandsCarsTips      @"cacheTowerHandsCarsTips"
/** 鱼塔 - 出牌界面-倒计时时间戳，以便进入后台后调节 */
#define kLocal_CacheTowerPlayCardsCountdown @"cacheTowerPlayCardsCountdown"

/** 鱼篓 - 鱼篓上一次回收时间 */
#define kLocal_CacheLastFishRecycleTime     @"cacheLastFishRecycleTime"

/** 尺素传鱼 - 是否显示新手引导 */
#define kLocal_CacheBarbGuide       @"cacheShowBarbGuide"
/** 风水 - 是否显示新手引导及上传步数提示 */
#define kLocal_CacheCenterGuide       @"cacheShowCenterGuide"

/** 工作 - 打卡最后选择的公司code */
#define kLocal_CacheWorkEntityCode      @"cacheWorkEntityCode"
#define kLocal_CacheWorkEntitySel      @"cacheWorkEntitySel"
#define kLocal_CacheLiveSel      @"cacheLiveSel"
#define kLocal_CacheSpiritSel      @"cacheSpiritSel"

#define kLocal_CacheLastVersion      @"cacheLastVersion"

/** 刷一刷 - 照片张数 */
#define kLocal_CacheBrushPictureCount     @"cacheBrushPictureCount"

/** 步数上传 - 上一次上传步数的时间 */
#define kLocal_CacheStepUploadingTime   @"cacheStepUploadingTime"
#define kLocal_CacheStepRemain   @"cacheStepRemain"
#define kLocal_CacheTraceRoom   @"cacheTraceRoom"
#define kLocal_CacheTerminateTime   @"cacheTerminateTime"

#define kLocal_CachePokeeMaster   @"cachePokeeMaster"
#define kLocal_CachePokeeTime   @"cachePokeeTime"
#define kLocal_CachePokeeRoom   @"cachePokeeRoom"

#define kLocal_CacheMainFlag   @"cacheMainFlag"    ///< vc展示情况

#define kLocal_CacheAskContact     @"cacheAskContact"           ///< 询问通讯录
#define kLocal_CacheAskActivity     @"cacheAskActivity"         ///< 询问活动记录

/** 商户记录**/
#define kLocal_CacheExpenseSelectRole @"cacheExpenseSelectRole"

/** 是否上传过电话本**/
#define kLocal_CacheUpdateContact     @"cacheUpdateContact"           ///< 是否上传过电话本

#define kLocal_CacheNewFeature     @"cacheNewFeature"           ///< 是否有新的引导页
#define kLocal_CacheSourceFlag      @"cacheSourceFlag"          ///< 基础数据获取情况
#define kLocal_CacheCopyFile      @"cacheCopyFile"          ///< 拷贝资源图片
#define kLocal_CacheQRStyle      @"cacheQRStyle"          ///< 个人二维码样式

// lsb 新支持的帮助提示弹框
#define kLocal_CacheShowSpirit      @"cacheHasShowSpirit"
#define kLocal_CacheShowSpiritAR      @"cacheHasShowSpiritAR"

// cxn 我的黄金积分
#define kLocal_CacheGMCenterPoint   @"cacheGMCenterPoint" ///< 我的黄金积分 用来对比变化加载动画
#define kLocal_CacheGMTargetPoint   @"cacheGMTargetPoint" ///< 我的黄金积分 用来对比变化加载动画

#define kLocal_CacheShowThirdRed    @"CachsShowThirdRed" ///< 来三斤红点

#define kLocal_CacheJDUID    @"CachsJDUID" ///< 京东绑定唯一值缓存

/**
 * 必须对应某个账号下的配置
 */
@interface AFFAppSettings : AFFLModeBase

//@property(nonatomic, strong) NSMutableDictionary *mDicData; // 系统需要的一次性装载的数据，如表情配置信息。这些统一定Key，在使用前先判断是否已加载了
@property(nonatomic, assign) BOOL isMicro; // 是否听筒模式
@property(nonatomic, assign) BOOL hasUnreadCircle, hasUnreadTide, hasNewSystem,hasUnreadYuzai,hasUnreadYulong,hasUnreadFacespotFishChange; // 是否有未读鱼消息
// 是否显示弹出框
@property(nonatomic, assign) BOOL
showCommentAlert,
showCoinAlert,
showWorkfireAlert,
showAssistAlert,
showPartAssistAlert,
showTouchAlert,
showGiftTouchAlert,
showDiaryVoteAlert,
showFriendPublishAlert,
showPartPublishAlert,
showWorkPublishAlert,
showBarbPublishAlert,
showWorkAlert,
showReplyAlert,
showPartReplyAlert,
showBegAlert,
showPresentAlert,
showServiceAlert,
showServiceLocalAlert,
showOtherFishAlert,
showGiftRoomFeedAlert,
showPoleWaterUsingAlert,
showHandsCardsAlert,
showMallNoticeAlert,
showSaveAlert,
showWorkDiaryCheckAlert,
showExpenseFishAlert,
showMissionOutAlert,
showJinlongFishAlert, //金龙鱼
showFreeFishAler,     //放生
showCrowdAlert,     //参与夺宝
showLuckAlert,      ///< 提醒抽奖扣分
showStepWarnAlert;

@property(nonatomic, assign) BOOL ignoreCircleRank, ignoreCircleShared, isUploadAddressBook, isFirstLogin;

@property (nonatomic, assign) U32 lastTaskDailyCheekTime;    ///< 日周期任务检测时间
@property (nonatomic, assign) U32 lastTaskRadioCheekTime;    ///< 日周期任务检测时间
@property (nonatomic, assign) U32 lastTaskHourCheekTime;    ///< 小时周期任务检测时间

@property(nonatomic, assign) U8 versionStatus;  ///< 版本状态 0=没有新版本；1=有新版本；2=有新版本已提示过了（特别注意，如果接口检查到没有新版本必须修改此值）
@property (nonatomic, assign) U32 lastVersionNum;    ///< 版本号；注意这个版本号是记录的上一个版本的版本号，只有触发了获取帮助信息后才会更新成当前版本的
@property(nonatomic, assign) BOOL isAutoGetFish;
/** 当前运行模式：0调试，1发布 */
@property(nonatomic, assign) U8 feature;    ///< 介绍页显示控制，如果与userInfo中不同就要显示
@property (nonatomic, assign) U32 dataClean;    ///< 上一次清理标记值
@property (nonatomic, assign) BOOL isVersionIgnore;    ///< 暂时不更新
@property (nonatomic, assign) BOOL isTouchHighLight;    ///< 点击是否出现高亮效果，用于辅助提醒

// 帮助页的配置
@property(nonatomic, assign) BOOL
hasShowHelpMsgFacework,
hasShowHelpMsgFaceworkCheck,
hasShowHelpMsgPlayerBuy,
hasShowHelpMsgPlayerSale,
hasShowHelpMsgCoin,
hasShowHelpCircleEdit,
hasShowHelpCircle,
hasShowHelpCircleNewMainPic,
hasShowHelpCirclePersonalEdit,
hasShowHelpFriendSell,
hasShowHelpFriendSign,
hasShowHelpGiftFeedValue,
hasShowHelpGiftJoinRoom,
hasShowHelpSwipYugong,
hasShowHelpSwipYulong,
hasShowHelpSwipYutang,
hasShowHelpYuxinCalendar,
hasShowHelpYuchaoWave,
hasShowHelpYulongShouYu,
hasShowHelpSwipAnyfishPic,
hasShowHelpBardGuide,
hasShowHelpCenterGuide;

@property (nonatomic, assign) BOOL
hasShowHelpSpirit,      ///< 捉妖主界面
hasShowHelpSpiritAr,    ///< 捉妖ar界面
hasShow;

@property(nonatomic, assign) BOOL hasNewWorker;

@property(nonatomic, assign) BOOL isInRoomChat; //当不在聊天界面时方便释放某些资源，如果没有在聊天界面，那么动画表情中判断superview为bubble时需要控制
/** TabBar 选中item改变*/
@property(nonatomic, assign) BOOL isTabSelectedChanged;

@property(nonatomic, assign) BOOL isSNRoomMember; // 迎新群，客服群中绘制气泡用
@property(nonatomic, strong) NSString *nSystemDesc;
/** 是否启用防沉迷锁功能 */
@property(nonatomic, assign) BOOL hasLock;

/** 鱼塘抢鱼使用身份暂存，下次使用 */
@property(nonatomic, strong) NSString *cache_Pool_RobID;
/** 鱼塘抢鱼使用宠物暂存，下次使用 */
@property(nonatomic, strong) NSString *cache_Pool_RobPet;
/** 鱼塘 */
@property(nonatomic, assign) BOOL cache_Pool_RobShake, cachePoolTraffic, cachePoolPushVirtual, cachePoolPushUmbrella;
/** 鱼塘-下杆数据 */
@property(nonatomic, strong) NSString *cachePoolPushPet, *cachePoolPushBag;
/** 鱼信-日历查看日期 dd*/
@property(nonatomic, strong) NSString *cacheCalendarDispDate;

//@property (nonatomic, strong) NSString *cacheCrashLog;    ///< 每次崩溃时保存下来，上传后清理
@property (nonatomic, assign) U32 cacheCrashTime;    ///< 崩溃时间

/** 鱼寺 */
@property(nonatomic, strong) NSString *cacheBuddhaPestle;
@property(nonatomic, strong) NSString *cacheBuddhaIncense;
@property(nonatomic, strong) NSString *cacheBuddhaIncenseText;

/** 鱼篓-上一次回收鱼的时间 */
@property(nonatomic, strong) NSString *cacheLastFishRecycleTime;

/** 鱼路 */
@property(nonatomic, assign) NSInteger cacheWalkEndTime;

@property(nonatomic, assign) BOOL cacheCalendarDisp;

/** 鱼篓 - 鱼网投放上一次时间 yyyy-mm-dd*/
@property(nonatomic, strong) NSString *cacheNetsShareFishDispDate;
/** 鱼票 - 上次打印使用的打印机唯一编号 */
@property(nonatomic, strong) NSString *cacheBillLastPrinterGUID;
/** 鱼票 - 邀请码设置*/
@property(nonatomic, strong) NSString *cacheBillInvitionCode;

/** 鱼客退出时商户 */
@property (nonatomic, strong) NSString *cacheSelectRoleEntityCode; ///< 鱼客退出时选择的商户

@property(nonatomic, strong) NSString *cacheBillEntityCode;             ///< 鱼票 - 默认商家code
@property(nonatomic, strong) NSString *cacheCollectionTimeDispDate;     ///< 鱼方 - 我的收藏-保存时间戳，以便于下次不拉取重复数据
@property(nonatomic, strong) NSString *cacheTowerPlayCardsCountdown;    ///< 鱼塔 - 出牌界面-倒计时时间戳，以便进入后台后调节
@property(nonatomic, strong) NSString *cacheWorkEntityCode;             ///< 工作 - 默认商家code
@property(nonatomic, assign) U64 cacheWorkEntitySel;             ///< 工作 - 显示默认商家code
@property(nonatomic, assign) U64 cacheLiveSel;             ///< 居住圈 - 默认
@property(nonatomic, assign) U64 cacheSpiritEntitySel;             ///< 捉妖 - 显示默认商家code
@property(nonatomic, strong) NSString *cacheBrushPictureCount;          ///< 刷一刷 - 照片张数
// 2.0增加 TODO:通过一层一层的判断是否有更新
@property (nonatomic, assign) BOOL hasNew_LeftPanel;    ///< 是否有侧边栏通知
@property (nonatomic, assign) BOOL hasNew_Friend;    ///< 是否有好友通知
@property (nonatomic, assign) BOOL hasNew_Setting;    ///< 是否有个人设置通知

@property (nonatomic, assign) BOOL isLeftHandFirst;    ///< 是否左手优先，默YES（考虑用户使用习惯，后期在个人设置中设置）

// 是否提示过用户访问请求
@property (nonatomic, assign) BOOL hasAskContacts;    ///< 通讯录
@property (nonatomic, assign) BOOL hasAskActivity;    ///< 活动记录


@property (nonatomic, assign) BOOL hasUpdateContact;    ///< 是否上传电话本

@property (nonatomic, assign) U32 cacheStepUploadingTime;          ///< 计步器 - 上次上传时间
@property (nonatomic, assign) U32 cacheStepRemain;    ///< 陀螺仪上一次记步未上传数量
@property (nonatomic, assign) U64 cacheTraceRoom;    ///< 崩溃前轨迹所在群code
@property (nonatomic, assign) U64 cachePokeeMaster;    ///< 加入斗地主牌局发起者
@property (nonatomic, assign) U32 cachePokeeTime;    ///< 加入斗地主牌局时间
@property (nonatomic, assign) U64 cachePokeeRoom;    ///< 加入斗地主牌局群
@property (nonatomic, assign) U64 cacheGMCenterPoint; ///< 我的黄金积分
@property (nonatomic, assign) U64 cacheGMTargetPoint; ///< 我的小目标积分

@property (nonatomic, assign) U32 cacheTerminateTime;    ///< 崩溃时间

@property (nonatomic, assign) U8 cacheSourceFlag;    ///< 基础数据处理情况；0=未拉取；1=已拉取；当清理数据后会还原为0；此举可实现多账号登陆后准备基础数据

@property (nonatomic, assign) U8 cacheQRStyle;    ///< 个人二维码样式

@property (nonatomic, assign) BOOL hasCopyFile;    ///< 是否已经拷贝了资源到目录；表情等

@property (nonatomic, assign) BOOL hasShowThirdRed;    ///< 显示来三斤红点
@property (nonatomic, strong) NSString *cacheJDUID;    ///< 京东账号唯一值


+ (AFFAppSettings *) sharedInstance;
- (void)updateRealtime;
+ (void)dispose;
+ (void)alertWarning:(NSString *)name;

/**
 * @function getPlistInfo
 * 获取表情配置文件信息
 * @param key 表情文件保存到内存字典中的key，注意这个key一定是对应plist的文件名，如exp_animation_en.plist  -> key = "exp_animation"
 
 * @return 配置信息
 */
+ (NSMutableDictionary *)getExpPlistInfo:(NSString *) key;

- (void)setValueForKey:(NSString *)key boolValue:(BOOL)value;
- (void)setValueForKey:(NSString *)key stringValue:(NSString *)value;

/** 需要清理时用 */
+ (void)cleanAppSetting;
#pragma mark 权限检查

typedef void (^PermissionsRequest)(BOOL available);

+ (void)isCameraAvailable:(PermissionsRequest)block;
+ (void)isPhotosAvailable:(PermissionsRequest)block;
+ (void)isMicrophoneAvailable:(PermissionsRequest)block;
+ (void)isAddrassBookAvailable:(PermissionsRequest)block;
+ (void)isGPSAvailable:(BOOL)alert block:(PermissionsRequest)block;
+ (void)isBluetoothAvailable:(PermissionsRequest)block;
+ (void)isBluetoothAvailable:(BOOL)alert block:(PermissionsRequest)block;

/**
 * iOS8.0以上是否开启了活动访问或允许访问
 */
+ (void)isActivityAvailable:(PermissionsRequest)block;

/**
 * 记步是否可访问（ios8.0以下，或者iPhone5s以下手机返回NO），注意与系统是否开启活动访问无关
 */
+ (void)isStepCountingAvailable:(PermissionsRequest)block;
#pragma end

@end



// 主题配置

#define kBadge_Height                       18.0f
#define kBadge_Width                        18.0f
#define kBadge_Width_2                      23.0f // 2位数
#define kBadge_Width_3                      31.0f // 3位数
#define kBadge_Width_Notify                 8.0f  // 仅通知tab、cell中
#define kBadge_Width_Notify_S               5.0f  // 仅通知上导航、部分控件上

#pragma mark UITableView cell

#define kPadding_BottomBar_H                30.0f       // 全屏等界面的底部操作按钮距离左右屏幕边距
#define kPadding_BottomBar_V                20.0f       // 全屏等界面的底部操作按钮距离底部屏幕边距

#define kPadding_Delta                      (isPad?3.0f:0)

// cell内部内容与cell边界
#define kPadding_Cell_H                      (12.0f+kPadding_Delta)      // cell 横向距离边界空间（cell中的内容与cell边界）
#define kPadding_Cell_V                      (12.0f+kPadding_Delta)      // cell 垂直距离边界空间（二行文字时）

// cell间或cell与屏幕的空间
#define kMargin_Cell_H                       (10.0f+kPadding_Delta)      // cell 之间的空间（如鱼潮主界面，踏浪界面cell与屏幕边界）
#define kMargin_Cell_V                       (10.0f+kPadding_Delta)      // cell 之间上下空间（如鱼榜、鱼潮等）

#define kMargin_Cell_Item_V                  (5.0f+kPadding_Delta)      // cell中控件距离自己下方控件距离（三行文字时）
#define kMargin_Cell_Item_H                  (5.0f+kPadding_Delta)      // cell中控件距离其他控件横向距离

#define kHeight_Delta                        (ScreenScale>2?3:0) // 不同分辨率的差值，因为子图会变化

#define kHeight_Cell_S                       (43.0f+kHeight_Delta)      // cell高度（图片22|29|一行文字）
#define kHeight_Cell_M                       (50.0f+kHeight_Delta)      // cell高度（图片36&一行文字）
#define kHeight_Cell_L                       (65.0f+kHeight_Delta)      // cell高度（图片36&二行文字）
#define kHeight_Cell_XL                      (80.0f+kHeight_Delta)      // cell高度（图片36&三行文字）

#define kHeight_Section_S                    11.0f      // cell分区高度（没有内容）
#define kHeight_Section_M                    36.0f      // cell分区高度（一行文字）

#pragma mark End

#pragma mark 系统头像大小
#define kHeight_PlayerIcon_S                 (22.0f+kHeight_Delta)      // 头像 - 小（日历贴章、首页排行榜商家）
#define kHeight_PlayerIcon_M                 (40.0f+kHeight_Delta)      // 头像 - 中（各种列表：鱼榜，鱼潮，聊天）
#define kHeight_PlayerIcon_L                 (50.0f+kHeight_Delta)      // 头像 - 大（鱼信，鱼塔、鱼塘标题栏，鱼塘钓鱼人）
#define kHeight_PlayerIcon_XL                (54.0f+kHeight_Delta)      // 头像 - 超大（鱼榜单个）
#define kHeight_PlayerIcon_XXL               (59.0f+kHeight_Delta)      // 头像 - 超超大（日历、详细资料）


/** 头像、按钮 圆角 **/
#define kCorner_Icon_S                       3.0f       // 方头像、按钮
#define kCorner_Chat_Bubble                  5.0f       // 聊天气泡
#define kCorner_Circle_Board                 5.0f       // 圈子打卡、简报、投票、活动等等

/** End **/

/** 系统图标大小 **/
#define kHeight_PagePoint                   5.0f        // 分页控件标点
#define kHeight_CircleOpr                   40.0f       // 普通圆形按钮（鱼塘、鱼塔下边兰，详细资料勋章图标）
#define kHeight_FishSign                    22.0f       // 不同界面的鱼章图标大小
#define kHeight_Fish                        45.0f       // 鱼形象（聊天、鱼典、弹出框）
#define kHeight_NavIcon                     17.0f       // 导航栏按钮图标
#define kHeight_Button_Cell                 22.0f       // cell中的按钮、其他圆角小按钮
#define kHeight_Button_GM                   32.0f       // 捕手用普通按钮高度，圆角是高度一半
#define kHeight_Button                      40.0f       // 通用VC底部操作按钮高度
#define kHeight_Button_CommonOperation      15.0f       // 通用小操作按钮（一般在cell上的箭头、checkbox、radio等）
#define kHeight_Button_ChatBoard            22.0f       // 鱼板上的按钮高度
/** End **/

#define kFrame_Button(y)                       CGRectMake(kPadding_Cell_H, y, SCREEN_WIDTH-kPadding_Cell_H*2, kHeight_Button)

#define kGoldMall_Button_Image(btn)                 [UIImage imageFromColors:@[kSetting.color_d7ac6b, kSetting.color_eccd8e] gradientType:EGradientTypeLeftToRight size:btn.size]

/** 获取全屏图（屏幕宽度图）高度，传入320宽度下的高度值 */
#define kHeight_FullScreenWith(heightof320)    ((SCREEN_WIDTH*heightof320)/320.0f)
#define kHeight_FullScreenWithEX(heightof320)    ((SCREEN_WIDTH_ADAPT*heightof320)/320.0f)    // 已6p为最大值
//#define kHeight_FullScreenLandscapeWith(heightof568)    ((SCREEN_WIDTH_Landscape*heightof568)/568.0f)

/** 设置collectionView的item宽度，传入320宽度下每行最大个数 */
#define kCollectionItem_Width(itemCountInlineBy320) ((SCREEN_WIDTH / (float)((int)SCREEN_WIDTH/(300/itemCountInlineBy320)))-kSetting.height_Separate*2)

#define kDelta_H(xOf320)    (xOf320*SCREEN_WIDTH/320)
#define kDelta_V(yOf320)    (yOf320*SCREEN_HEIGHT/480)

#define kWidth_Alert                        270.0f      ///< 弹出框统一宽度

// AppId

#define kBundleID_AF_AppStore       @"anyfish.AnyfishApp"               ///< 百鱼
#define kBundleID_AF                @"com.anyfish.AnyfishApp"           ///< 百鱼
#define kBundleID_HeshanDJ          @"com.anyfish.Heshan.Dangjian"      ///< 朝阳禾山
#define kBundleID_HeshanJW          @"com.anyfish.jw"                   ///< 平安厝边
#define kBundleID_CDzhcy            @"com.anyfish.CDzhcy"               ///< 成都智慧餐饮
#define kBundleID_CDzhdj            @"com.anyfish.CDzhdj"               ///< 智慧党建
#define kBundleID_CDzhjj            @"com.anyfish.CDzhjj"               ///< 智慧家居
#define kBundleID_Ltbh              @"com.anyfish.ltbh"                 ///< 龙腾百湖
#define kBundleID_WHBL              @"com.anyfish.whbl"                 ///< 伴邻
#define kBundleID_JXdlgj            @"com.anyfish.JXdlgj"               ///< 电力计量管家

#define kBundleID_AF_Street         @"com.anyfishcd.street"               ///< 百鱼 - 后商
#define kBundleID_AF_Mall             @"anyfish.GoldMall"                ///< 黄金圈

// 第三方的appStore版本
#define kBundleID_AS_lzgxt             @"com.anyfishex.lzgxt"                ///< 公信通
#define kBundleID_AS_radio             @"com.shijia.baimei"                ///< 百媚

#pragma mark End

/**
 * 对应某个账号的配置主题
 */
@interface AFFThemeConfig : NSObject

+ (AFFThemeConfig *) sharedInstance;
+ (void)dispose;
- (void)initPlist;

@property (nonatomic, assign) BOOL isLandscape;    ///< 是否进入了横屏模式，目前观察是否合理

// 主题控制静态变量定义（按照统一规范增加）
#pragma mark 部分配置特殊定义出来，其他调用通用的
@property (nonatomic, assign) CGFloat      height_Separate;     ///< 分割线高度

@property (nonatomic, strong) UIColor       *color_Badge;       ///< 显示通知数量的气泡颜色

// 字体
@property (nonatomic, strong) UIFont       *font_Title; ///< 标题（如鱼信信息标题） 15
@property (nonatomic, strong) UIFont       *font_Content; ///< 正文标注（如鱼信信息）13
@property (nonatomic, strong) UIFont       *font_Notify; ///< 提示文字（如消息数量） 11
@property (nonatomic, strong) UIFont       *font_Sign; ///< 标签栏（如tabbaritem名称） 10
@property (nonatomic, strong) UIFont       *font_Section; ///< cell分区内容 13

// 颜色
/** 标题 */
@property (nonatomic, strong) UIColor       *color_Title;       // @"#333333"
/** 内容 */
@property (nonatomic, strong) UIColor       *color_Content;     // @"#999999"
/** 提示(显示消息数量） */
@property (nonatomic, strong) UIColor       *color_Notify;      // @"#ffffff"
/** 标签 */
@property (nonatomic, strong) UIColor       *color_Sign;        // @"#666666"
/** 标签（选中） */
@property (nonatomic, strong) UIColor       *color_Sign_Sel;    // @"#16a8ef"
/** cell分区背景 */
@property (nonatomic, strong) UIColor       *color_Section;     // @"#eeeeee"
/** cell分区文字颜色 */
@property (nonatomic, strong) UIColor       *color_Section_Text;     // @"#666666"
/** cell分割线 */
@property (nonatomic, strong) UIColor       *color_Separate;    // @"#d7d7d7"
#pragma mark End


#pragma mark 聊天界面
@property (nonatomic, strong) UIFont        *font_Chat_Title;   ///< 发送文本 17
@property (nonatomic, strong) UIFont        *font_Chat_Desc;    ///< 鱼板等描述，操作文字，鱼名称，12
@property (nonatomic, strong) UIFont        *font_Chat_Info;    ///< 通知类型文本 10


/** 文本颜色(接收消息、鱼板等） */
@property (nonatomic, strong) UIColor        *color_Chat_Title;    // @"#ffffff"
/** 文本颜色(接收消息、鱼板等）高亮 */
@property (nonatomic, strong) UIColor        *color_Chat_Title_Sel;    // @"#fffffff"
/** 发送文本消息颜色 */
@property (nonatomic, strong) UIColor        *color_Chat_Title_Out;   // @"#333333"
/** 发送文本消息颜色高亮 */
@property (nonatomic, strong) UIColor        *color_Chat_Title_Out_Sel;  // @"#333333"

/** 描述文本 */
@property (nonatomic, strong) UIColor        *color_Chat_Desc;      ///< @"#999999"
@property (nonatomic, readonly) UIColor        *color_Chat_Info_Bg;    ///< 聊天通知类型默认背景 000000 0.15
/** 鱼名称、其他较不明显文字 */
@property (nonatomic, strong) UIColor        *color_Chat_Sub;       // @"#999999"
@property (nonatomic, strong) UIColor        *color_Chat_TimeStamp;       // @"#a5a8ac"

#pragma mark End
// 字体

/** 栏目（如导航栏标题）17 */
@property (nonatomic, strong) UIFont       *font_Title_Big;         // 19
/** 普通文本 12*/
@property (nonatomic, strong) UIFont       *font_Text;              // 13
/** 导航栏按钮 14*/
@property (nonatomic, strong) UIFont       *font_NavItem;           // 14
/** 按钮 - 普通操作 14*/
@property (nonatomic, strong) UIFont       *font_Button;            // 15

@property (nonatomic, strong) UIFont       *font_Address;           ///< 10 地理位置
@property (nonatomic, strong) UIFont       *font_Location;          ///< 14 定位界面

@property (nonatomic, strong) UIFont       *font_AlertTitle;           ///< 15 弹出框标题（正文描述、弹出主要题型内容等）
@property (nonatomic, strong) UIFont       *font_AlertSheet;           ///< 17 弹出的sheet项目描述
@property (nonatomic, strong) UIFont       *font_AlertDesc;            ///< 11 弹出框描述（附带描述，如xx克数、地址、不在提示、使用xxx等）
@property (nonatomic, strong) UIFont       *font_AlertInput;           ///< 13 弹出框输入view
@property (nonatomic, strong) UIFont       *font_AlertButton;          ///< 15 弹出框下面的操作按钮


// 颜色
@property (nonatomic, strong) UIColor       *color_21292c;      ///< 导航栏背景、
@property (nonatomic, strong) UIColor       *color_16a8ef;      ///< 偏蓝色、提示色值，
@property (nonatomic, strong) UIColor       *color_69d0d0;      ///< 偏绿色、提示色值，
@property (nonatomic, strong) UIColor       *color_ffffff;      ///< 列表背景
@property (nonatomic, strong) UIColor       *color_666666;      ///< 偏灰色
@property (nonatomic, strong) UIColor       *color_999999;      ///< 浅灰色、描述、副标题
@property (nonatomic, strong) UIColor       *color_333333;      ///< 偏黑色、正文标题
@property (nonatomic, strong) UIColor       *color_d7d7d7;      ///< cell分割线、
@property (nonatomic, strong) UIColor       *color_e7e7e7;      ///< 顶部提示搜索栏背景、
@property (nonatomic, strong) UIColor       *color_1fa4ff;      ///< 功能栏目分割线
@property (nonatomic, strong) UIColor       *color_f44336;      ///< 偏红色、消息数量提示
@property (nonatomic, strong) UIColor       *color_eeeeee;      ///< 图标背景、
@property (nonatomic, strong) UIColor       *color_f8f8f8;      ///< 下导航背景、
@property (nonatomic, strong) UIColor       *color_ff9800;      ///< 偏橙色
@property (nonatomic, strong) UIColor       *color_77c8f0;      ///< 偏蔚蓝色
@property (nonatomic, strong) UIColor       *color_f7dc26;      ///< 土黄色
@property (nonatomic, strong) UIColor       *color_f0f4f7;      ///< 浅灰色，链接展示背景
@property (nonatomic, strong) UIColor       *color_76ad00;      ///< 黄绿色，弹框提示，鱼板详情
@property (nonatomic, strong) UIColor       *color_a5a8ac;      ///< 浅灰色，时间戳、消息聊天名称


@property (nonatomic, strong) UIColor       *color_ef8692;      ///< 粉红，直播主色
// 鱼符
@property (nonatomic, strong) UIColor       *color_ff7573;      ///< 偏红色、鱼缘符
@property (nonatomic, strong) UIColor       *color_59d7a9;      ///< 偏绿色、鱼邻符
@property (nonatomic, strong) UIColor       *color_ffae20;      ///< 偏橙色、鱼伴符
@property (nonatomic, strong) UIColor       *color_43c6f3;      ///< 偏蓝色、鱼亲符
@property (nonatomic, strong) UIColor       *color_e5e5e5;      ///< 偏灰色、鱼符热度边框

@property (nonatomic, strong) UIColor       *color_e28701;      ///<
@property (nonatomic, strong) UIColor       *color_7d94f4;      ///< 偏紫色、鱼场
@property (nonatomic, strong) UIColor       *color_81c026;      ///< 偏黄绿色、鱼场
@property (nonatomic, strong) UIColor       *color_fab91c;      ///< 偏橙色、百鱼塔牌局
@property (nonatomic, strong) UIColor       *color_cdf6fd;      ///< 蔚蓝色（天空）、自由钓
@property (nonatomic, strong) UIColor       *color_f3e14f;      ///< 太阳黄、自由钓太阳

@property (nonatomic, strong) UIColor       *color_ff8381;      ///< 淡红色

// 拉力赛
@property (nonatomic, strong) UIColor *color_b0f1ff;    ///< 浅蓝色，拉力赛排名选中色
@property (nonatomic, strong) UIColor *color_63bfe0;    ///< 浅蓝加黑，拉力赛排名未选中色
@property (nonatomic, strong) UIColor *color_19a6a8;    ///< 亮蓝色，拉力赛的边线
@property (nonatomic, strong) UIColor *color_11233c;    ///< 深蓝，拉力赛vc背景
@property (nonatomic, strong) UIColor *color_92f7ff;    ///< 亮蓝，拉力赛排名列表人名称
@property (nonatomic, strong) UIColor *color_0a2f47;    ///< 淡蓝，排名cell背景

@property (nonatomic, strong) UIColor *color_d7ac6b;    ///< mall - 偏金色（深）,通用图片颜色或者按钮的渐变左边颜色
@property (nonatomic, strong) UIColor *color_eccd8e;    ///< mall - 偏金色（浅）,导航等渐变右边颜色
@property (nonatomic, strong) UIColor *color_cca76e;    ///< mall - 偏金色,下导航文字、等其他通用的黄金圈文字;主色调（黄金捕手）

@property (nonatomic, strong) UIColor *color_Redbag;    ///< mall - 偏黑色，红包背景 2d343e
@property (nonatomic, strong) UIColor *color_RedbagText;    ///< mall - 土黄，红包上的文字 c3976a
@property (nonatomic, strong) UIColor *color_2984e9;    ///< mall - 常用特殊文字颜色：链接、电话、聊天部分操作按钮文字

@property (nonatomic, strong) UIColor *color_TBao;    ///< mall - 淘宝客中的导航主色 fa6220

// 字体大小
@property (nonatomic, assign) CGFloat       fontSize_8;         ///< 8号
@property (nonatomic, assign) CGFloat       fontSize_9;         ///< 9号
@property (nonatomic, assign) CGFloat       fontSize_10;        ///< 10号
@property (nonatomic, assign) CGFloat       fontSize_11;        ///< 11号
@property (nonatomic, assign) CGFloat       fontSize_12;        ///< 12号
@property (nonatomic, assign) CGFloat       fontSize_13;        ///< 13号
@property (nonatomic, assign) CGFloat       fontSize_14;        ///< 14号
@property (nonatomic, assign) CGFloat       fontSize_15;        ///< 15号
@property (nonatomic, assign) CGFloat       fontSize_16;        ///< 16号
@property (nonatomic, assign) CGFloat       fontSize_17;        ///< 17号
@property (nonatomic, assign) CGFloat       fontSize_18;        ///< 18号
@property (nonatomic, assign) CGFloat       fontSize_19;        ///< 19号
@property (nonatomic, assign) CGFloat       fontSize_21;        ///< 21号

@property (nonatomic, strong) UIFont        *font_8;            ///< 8号
@property (nonatomic, strong) UIFont        *font_9;            ///< 9号
@property (nonatomic, strong) UIFont        *font_10;           ///< 10号
@property (nonatomic, strong) UIFont        *font_11;           ///< 11号
@property (nonatomic, strong) UIFont        *font_12;           ///< 12号
@property (nonatomic, strong) UIFont        *font_13;           ///< 13号
@property (nonatomic, strong) UIFont        *font_14;           ///< 14号
@property (nonatomic, strong) UIFont        *font_15;           ///< 15号
@property (nonatomic, strong) UIFont        *font_16;           ///< 16号
@property (nonatomic, strong) UIFont        *font_17;           ///< 17号
@property (nonatomic, strong) UIFont        *font_18;           ///< 18号
@property (nonatomic, strong) UIFont        *font_21;           ///< 21号


/** 上导航背景 #21292c */
@property (nonatomic, strong) UIColor       *color_Bg_Nav;        
/** 状态栏背景 #21292c*/
@property (nonatomic, strong) UIColor       *color_Bg_Sta;         
/** 顶部提示，搜索栏背景 #e7e7e7*/
@property (nonatomic, strong) UIColor       *color_Bg_Search;      
/** Tbv cell背景白色 */
@property (nonatomic, strong) UIColor       *color_Bg_TabVCell;     
/** 界面背景、图标背景 #eeeeee*/
@property (nonatomic, strong) UIColor       *color_Bg_VC;
/** 图片背景 #eeeeee*/
@property (nonatomic, strong) UIColor       *color_Bg_Image;
/** 下导航背景 #f8f8f8*/
@property (nonatomic, strong) UIColor       *color_Bg_Tab;
/** TableView背景 无色*/
@property (nonatomic, strong) UIColor       *color_Bg_TableView;
/** 聊天界面背景 #eeeeee*/
@property (nonatomic, strong) UIColor       *color_Bg_Chat;
/** Switch控件关闭 #999999*/
@property (nonatomic, strong) UIColor       *color_Bg_SwitchOff;
/** Switch控件打开 #16a8ef*/
@property (nonatomic, strong) UIColor       *color_Bg_SwitchOn;
/** 普通文本 #333333*/
@property (nonatomic, strong) UIColor       *color_Text;
/** 导航标题颜色 白色*/
@property (nonatomic, strong) UIColor       *color_NavTitle;

@property (nonatomic, strong) UIColor       *color_Btn_Disabled;    ///< 按钮不能点击颜色:#d7d7d7
@property (nonatomic, strong) UIColor       *color_Btn_Green;    ///< 按钮不能点击颜色:#69d0d0
@property (nonatomic, strong) UIColor       *color_Btn_Orange;      ///< 按钮颜色:#ff9800
@property (nonatomic, strong) UIColor       *color_Btn_Red;         ///< 按钮颜色:#f44336
@property (nonatomic, strong) UIColor       *color_Btn_Blue;        ///< 按钮颜色:#16a8ef


#pragma mark 路径

@property (nonatomic, readonly) NSString *path_TempVideo;    ///< 账号目录，临时目录，视频录制
@property (nonatomic, readonly) NSString *path_Weather;    ///< 账号目录，一段时间天气
@property (nonatomic, readonly) NSString *path_Database;    ///< 数据库目录，登陆或未登陆内部判断
@property (nonatomic, readonly) NSString *path_Document;    ///< 账号目录，文件
@property (nonatomic, readonly) NSString *path_Log;    ///< 账号目录，当前账号的日志：step，trace等

//全局
@property (nonatomic, readonly) NSString *path_Globle;    ///< 全局目录，公共缓存数据
@property (nonatomic, readonly) NSString *path_User;    ///< 全局目录，存放UI用户数据目录
@property (nonatomic, readonly) NSString *path_Location;    ///< 全局目录，经纬度缓存名称文件、或图片
@property (nonatomic, readonly) NSString *path_Exception;    ///< 全局目录，崩溃日志
@property (nonatomic, readonly) NSString *path_Event;    ///< 全局目录，记录时间日志
@property (nonatomic, readonly) NSString *path_Url;    ///< 全局目录，消息链接数据
@property (nonatomic, readonly) NSString *path_Download;    ///< 全局目录，下载的各种头像

// 全局 - 消息展示优化，将用户查看的二进制数据缓存到文件，避免内存占用以及异步加载闪动
@property (nonatomic, readonly) NSString *path_MediaTempSelect;    ///< 全局目录，图片选择临时目录，下一次选择时清理
@property (nonatomic, readonly) NSString *path_ImageTransfer;   ///<  全局目录，固定图片转发到聊天用，如二维码转发等

/** 版本号 */
@property (nonatomic, strong) NSString *versionStr, *versionBuild;
@property (nonatomic, assign) U32 versionNum;    ///< 版本号；去掉.后的数值
@property (nonatomic, assign) U32 versionClient;    ///< 客户端转换成U32的值，版本号

// 静态参数配置

// 和登陆者无关的配置
@property (nonatomic, strong) NSString *imgCagetory;    ///< 图片目录文件夹

@property (nonatomic, strong) NSString *identifier;    ///< 程序ID
@property (nonatomic, assign) U64 issuerApp;    ///< 当前app的发行商
@property (nonatomic, assign) U64 issuerAppRelease;    ///< 当前app的发行商正式code
//@property (nonatomic, assign) U64 issuerAppDebug;    ///< 当前app的发行商
@property (nonatomic, assign) U64 issuerAF;    ///< 百鱼发行商code
@property (nonatomic, assign) U64 issuerAFDebug;    ///< 百鱼发行商code
@property (nonatomic, assign) U64 issuerHSDJ;    ///< 禾山党建发行商code
@property (nonatomic, assign) U64 issuerHSDJDebug;    ///< 禾山党建发行商code
@property (nonatomic, assign) U64 issuerHSJW;    ///< 禾山警务发行商code
@property (nonatomic, assign) U64 issuerHSJWDebug;    ///< 禾山警务发行商code
@property (nonatomic, assign) U64 issuerLTBH;    ///< 百湖
@property (nonatomic, assign) U64 issuerLTBHDebug;    ///< 百湖
@property (nonatomic, assign) U64 issuerCDzhcy;    ///< 成都智慧餐饮
@property (nonatomic, assign) U64 issuerCDzhcyDebug;    ///< 成都智慧餐饮
@property (nonatomic, assign) U64 issuerCDzhdj;    ///< 成都智慧党建
@property (nonatomic, assign) U64 issuerCDzhdjDebug;    ///< 成都智慧党建
@property (nonatomic, assign) U64 issuerCDzhjj;    ///< 成都智慧家居
@property (nonatomic, assign) U64 issuerCDzhjjDebug;
@property (nonatomic, assign) U64 issuerWHBL;    ///< 武汉伴邻
@property (nonatomic, assign) U64 issuerWHBLDebug;    ///< 武汉伴邻
@property (nonatomic, assign) U64 issuerLZgxt;    ///< 兰州公信通
@property (nonatomic, assign) U64 issuerLZgxtDebug;
@property (nonatomic, assign) U64 issuerJXdlgj;    ///< 江西电力管家
@property (nonatomic, assign) U64 issuerJXdlgjDebug;
@property (nonatomic, assign) U64 issuerRadio;    ///< 江西电力管家
@property (nonatomic, assign) U64 issuerRadioDebug;


@property (nonatomic, assign) U64 issuerAFStreet;    ///< 后商
@property (nonatomic, assign) U64 issuerAFStreetDebug;

@property (nonatomic, assign) U64 issuerAFMall;    ///< 黄金圈
@property (nonatomic, assign) U64 issuerAFMallDebug;

@property (nonatomic, assign) BOOL hideApp_ChatFish;    ///< 聊天鱼典
@property (nonatomic, assign) BOOL hideApp_ChatSence;    ///< 聊天情景
@property (nonatomic, assign) BOOL hideApp_ChatGame;    ///< 聊天游戏
@property (nonatomic, assign) BOOL hideApp_ZoneFish;    ///< 圈子送鱼，鱼典
@property (nonatomic, assign) BOOL hideApp_ZoneFishCast;    ///< 圈子扣鱼

@property (nonatomic, strong) NSString *issuerKeyGaode;    ///< 高德key
@property (nonatomic, strong) NSString *issuerKeyGoogle;    ///< 谷歌key
@property (nonatomic, strong) NSString *issuerKeyWeChat;    ///< 微信key


@property (nonatomic, strong) NSArray *arrRoleName;    ///< 默认角色
@property (nonatomic, strong) NSArray *arrRoleNameParty;    ///< 党建角色别名
@property (nonatomic, strong) NSArray *arrRoleNamePolice;    ///< 警务角色别名

@property (nonatomic, assign) BOOL isInhouse;    ///< 是否企业版本
@property (nonatomic, assign) U8 runingMode;    ///< 运行模式，0=调试

@property (nonatomic, readonly) NSString *downloadUrl_AppStore;    ///< appStore版本下载地址

// 后台没考虑的配置

@property (nonatomic, assign) BOOL hideNew;    ///< 隐藏新手礼包
@property (nonatomic, assign) BOOL hideExpense;    ///< 隐藏设置的鱼客

@property (nonatomic, strong) NSString *issuerNameLaw;    ///< 发行主体名

@property (nonatomic, assign) BOOL showWorkMore;    ///< 启动进入工作圈默认打开更多view

@property (nonatomic, strong) NSArray *colorFeature;    ///< 引导页背景

// String.plist

@property (nonatomic, strong) NSString *issuerWorkInvite;    ///< 邀请加入公司描述
@property (nonatomic, strong) NSString *issuerWorkCard;    ///< 公司名片别名
@property (nonatomic, strong) NSString *issuerWorkLesson;    ///< 科目别名
@property (nonatomic, strong) NSString *issuerNameSelComp;    ///< 选择公司
@property (nonatomic, strong) NSString *issuerNameSearchComp;    ///< 查询公司
@property (nonatomic, strong) NSString *issuerNameQRComp;    ///< 工作圈二维码描述
@property (nonatomic, strong) NSString *issuerNameZonePublish;    ///< 发布圈子提示扣鱼
@property (nonatomic, strong) NSString *issuerNamePlaceLocation;    ///< 工作圈发位置提示文字

@property (nonatomic, readonly) BOOL isCenterLive;    ///< 是否居住圈在中间页

@property (nonatomic, assign) BOOL isDispLane;    ///< 是否显示后巷功能；默认NO
@property (nonatomic, assign) BOOL isRadio;    ///< 是否百媚
@property (nonatomic, assign) U8 cacheMainFlag;    ///< 界面展示类别 0=百鱼，1=直播，2=百媚，（由于百鱼要支持跳转百媚所以的控制）

#pragma mark UI缓存
@property (nonatomic, strong) NSMutableDictionary *mDicAnimate;    ///< 动画配置
@property (nonatomic, strong) NSMutableDictionary *mDicCache;    ///< 表情相关

/* 字体
 Family: Hiragino Kaku Gothic ProN W3
 Font: HiraKakuProN-W3
 Family: Courier
 Font: Courier
 Font: Courier-BoldOblique
 Font: Courier-Oblique
 Font: Courier-Bold
 Family: Arial
 Font: ArialMT
 Font: Arial-BoldMT
 Font: Arial-BoldItalicMT
 Font: Arial-ItalicMT
 Family: STHeiti TC
 Font: STHeitiTC-Light
 Font: STHeitiTC-Medium
 Family: AppleGothic
 Font: AppleGothic
 Family: Courier New
 Font: CourierNewPS-BoldMT
 Font: CourierNewPS-ItalicMT
 Font: CourierNewPS-BoldItalicMT
 Font: CourierNewPSMT
 Family: Zapfino
 Font: Zapfino
 Family: Hiragino Kaku Gothic ProN W6
 Font: HiraKakuProN-W6
 Family: Arial Unicode MS
 Font: ArialUnicodeMS
 Family: STHeiti SC
 Font: STHeitiSC-Medium
 Font: STHeitiSC-Light
 Family: American Typewriter
 Font: AmericanTypewriter
 Font: AmericanTypewriter-Bold
 Family: Helvetica
 Font: Helvetica-Oblique
 Font: Helvetica-BoldOblique
 Font: Helvetica
 Font: Helvetica-Bold
 Family: Marker Felt
 Font: MarkerFelt-Thin
 Family: Helvetica Neue
 Font: HelveticaNeue
 Font: HelveticaNeue-Bold
 Family: DB LCD Temp
 Font: DBLCDTempBlack
 Family: Verdana
 Font: Verdana-Bold
 Font: Verdana-BoldItalic
 Font: Verdana
 Font: Verdana-Italic
 Family: Times New Roman
 Font: TimesNewRomanPSMT
 Font: TimesNewRomanPS-BoldMT
 Font: TimesNewRomanPS-BoldItalicMT
 Font: TimesNewRomanPS-ItalicMT
 Family: Georgia
 Font: Georgia-Bold
 Font: Georgia
 Font: Georgia-BoldItalic
 Font: Georgia-Italic
 Family: STHeiti J
 Font: STHeitiJ-Medium
 Font: STHeitiJ-Light
 Family: Arial Rounded MT Bold
 Font: ArialRoundedMTBold
 Family: Trebuchet MS
 Font: TrebuchetMS-Italic
 Font: TrebuchetMS
 Font: Trebuchet-BoldItalic
 Font: TrebuchetMS-Bold
 Family: STHeiti K
 Font: STHeitiK-Medium
 Font: STHeitiK-Light
 */
@end


